package java_0308;

/**
 * 编程求 1~10000之间的所有“完全数”
 * 完全数是该数的所有因子之和等于该数的数。例如，6的因子有 1、2、3，且 6=1+2+3，所以6是完全数。
 */
public class PerfectNumber {
    public static boolean perfectNumber(int num ){
        int sum=0;
       //判断是否是完全数
        for (int i = 1; i < num-1; i++) {
            if(num%i==0){
                sum+=i;
            }
        }
        return num==sum;
    }

    public static void main(String[] args) {
        //求1-10000之间的完全数
        for (int i = 1; i <= 1000; i++) {
            if(perfectNumber(i)){
                System.out.print(i+" ");
            }
        }
    }
}
